﻿#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
/*int main()
{
	void move(int* pointer,int x);
	int a[3][3], * p, i, j;
	printf("请输入数组矩阵元素：\n");
	for (i = 0; i < 3; i++)
		for (j = 0; j < 3; j++)
			scanf("%d", &a[i][j]);
	p = &a[0][0];
	for (i = 0; i < 3; i++)
		move(p,i);
	printf("转置后的矩阵为：\n");
	for (i = 0; i < 3; i++)
	{
		for (j = 0; j < 3; j++)
			printf("%d ",a[i][j]);
		printf("\n");
	}
	return 0;
}
void move(int* pt,int i)
{
	int t, j;
	for (j = i; j < 3; j++)
	{
		t = *(pt + 3 * i + j);
		*(pt + 3 * i + j) = *(pt + 3 * j + i);
		*(pt + 3 * j + i) = t;
	}
}*/
//#include <stdio.h>
//int main()
//{
//	void move(int* pointer, int i);
//	int a[3][3], * p, i, j;
//	printf("请输入数组矩阵元素：\n");
//	for (i = 0; i < 3; i++)
//		for (j = 0; j < 3; j++)
//			scanf("%d", *(a + i) + j);
//	p = &a[0][0];
//	for (i = 0; i < 3; i++)
//		move(p + i, i);
//	printf("转置后的矩阵为：\n");
//	for (i = 0; i < 3; i++)
//	{
//		for (j = 0; j < 3; j++)
//			printf("%d ", *(*(a + i) + j));
//		printf("\n");
//	}
//	return 0;
//}
//void move(int* pt, int i)
//{
//	int j, t;
//	for (j = i; j < 3; j++)
//	{
//		t = *(pt + 2 * i + j);
//		*(pt + 2 * i + j) = *(pt + 3 * j);
//		*(pt + 3 * j) = t;
//	}
//}
//int strlength(char str[]);
//int main()
//{
//	char str[100];
//	char* p;
//	p = str;
//	gets(p);
//	printf("%d",strlength(str));
//	return 0;
//}
//int strlength(char *p)
//{
//	int i = 0;
//	while (p[i++] != '\0');//p[i]==*(p+i)
//	return i - 1;
//}
#include<stdio.h>
void move(int a[5][5]);
int main()
{
	int a[5][5];
	int i, j;
	for (i = 0; i <= 4; i++)
	{
		for (j = 0; j <= 4; j++)
			scanf("%d", &a[i][j]);
	}
	move(a);
	for (i = 0; i <= 4; i++)
	{
		for (j = 0; j <= 4; j++)
			printf("%d  ", a[i][j]);
		printf("\n");
	}
	return 0;
}
void move(int a[5][5])
{
	int i, j, t, max = 0, row, column;
	for (i = 0; i <= 4; i++)
	{
		for (j = 0; j <= 4; j++)
		{
			if (a[i][j] > max)
			{
				max = a[i][j];
				row = i;
				column = j;
			}
		}

	}
	t = a[2][2];
	a[2][2] = a[row][column];
	a[row][column] = t;
	max = 10000;
	for (i = 0; i <= 4; i++)
	{
		for (j = 0; j <= 4; j++)
		{
			if (a[i][j] < max)
			{
				max = a[i][j];
				row = i;
				column = j;
			}
		}
	}
	t = a[0][0];
	a[0][0] = a[row][column];
	a[row][column] = t;
}
//#include<stdio.h>
//#define N 5
//int main()
//{
//	void transfer(int arr[N][N]);
//	int arr[N][N] = { 0 };
//	int i = 0, j = 0;
//	for (i = 0; i < N; i++)
//	{
//		for (j = 0; j < N; j++)
//		{
//			scanf("%d", &arr[i][j]);
//		}
//	}
//	transfer(arr);
//	for (i = 0; i < N; i++)
//	{
//		for (j = 0; j < N; j++)
//		{
//			printf("%d   ", arr[i][j]);
//		}
//		printf("\n");
//	}
//	return 0;
//}
//void transfer(int arr[N][N])
//{
//	int a = 0, b = 0, c = 0, d = 0, n = arr[0][0], x = arr[0][0], t = 0;
//	int i, j;
//	for (i = 0; i < N; i++)
//	{
//		for (j = 0; j < N; j++)
//		{
//			if (n < arr[i][j])
//			{
//				n = arr[i][j];
//				a = i;
//				b = j;
//			}
//		}
//	}//取最大值¦Ì
//	for (i = 0; i < N; i++)
//	{
//		for (j = 0; j < N; j++)
//		{
//			if (x > arr[i][j])
//			{
//				x = arr[i][j];
//				c = i;
//				d = j;
//			}
//		}
//	}//取最小值¦Ì
//	t = arr[a][b];
//	arr[a][b] = arr[N / 2][N / 2];
//	arr[N / 2][N / 2] = t;
//	t = arr[c][d];
//	arr[c][d] = arr[0][0];
//	arr[0][0] = t;
//}
//
